<template>
	<page-body>
		<view class="page">
			<view class="flex benben-position-layout flex flex-wrap align-center coursePro_flex_0"
				:style="{height:(88+StatusBarRpx)+'rpx',paddingTop:StatusBarRpx+'rpx', }" v-if="bbb">
				<view class='flex flex-wrap align-center justify-between flex-sub coursePro_fd0_0'>
					<view class='flex flex-wrap align-center coursePro_fd0_0_c0'>
						<text class='fu-iconfont2  coursePro_fd0_0_c0_c00012' @tap.stop="handleJumpDiy" data-type="back"
							data-url="1">&#xE794;</text>
					</view>
					<view class='flex flex-wrap align-stretch justify-center'>
						<text class='coursePro_fd0_0_c1_c0'>课程</text>
					</view>
					<view class='flex flex-wrap align-center justify-end coursePro_fd0_0_c0'>
					</view>
				</view>
			</view>
			<view :style="{height: (88+StatusBarRpx)+'rpx'}" v-if="bbb"></view>
			<view class="flex benben-position-layout flex flex-wrap align-center coursePro_flex_0123456"
				:style="{height:(StatusBarRpx)+'rpx',paddingTop:StatusBarRpx+'rpx', }" v-if="!bbb">
				<view class='flex flex-wrap align-center justify-between flex-sub coursePro_fd0_0'>
					<view class='flex flex-wrap align-center coursePro_fd0_0_c0'>
						<text class='fu-iconfont2  coursePro_fd0_0_c0_c0' @tap.stop="handleJumpDiy" data-type="back"
							data-url="1">&#xE794;</text>
					</view>
					<view class='flex flex-wrap align-stretch justify-center'>
						<text class='coursePro_fd0_0_c1_c0'></text>
					</view>
					<view class='flex flex-wrap align-center justify-end coursePro_fd0_0_c0'>
					</view>
				</view>
			</view>
			<view :style="{height: (StatusBarRpx)+'rpx'}" v-if="!bbb"></view>
			<!---flex布局flex布局开始-->
			<view class="flex benben-flex-layout flex-wrap align-center coursePro_flex_1">
				<image class='coursePro_fd1_0' mode="aspectFill" :src='list.cover?list.cover:STATIC_URL+"LOGO.png"'></image>
				<view style="position: absolute; top: 26rpx; left: 32rpx;">
					<text class='fu-iconfont2  coursePro_fd0_0_c0_c0' @tap.stop="handleJumpDiy" data-type="back"
						data-url="1">&#xE794;</text>
				</view>
			</view>

			<!---flex布局flex布局结束-->
			<!---flex布局flex布局开始-->
			<view class="flex flex-direction flex-wrap align-stretch benben-flex-layout coursePro_flex_2">
				<view class="flex align-center justify-between" style="background-color: #ffffff;">
					<view class='flex flex-direction flex-wrap align-stretch coursePro_fd2_0'>
						<text class='coursePro_fd2_0_c0'>{{list.name}}</text>
						<view class='flex flex-wrap align-center'>
							<!-- <view class="text1-outer">
								<text>{{$t('共')}}</text>
								<text>{{list.class_period}}</text>
								<text>{{$t('课时')}}</text>
							</view> -->
							<text class='coursePro_fd2_0_c1_c0'>{{$t('授课教师：')}}</text>
							<text v-if="group==1" class='coursePro_fd2_0_c1_c0'>{{list.teacher_name}}</text>
							<text v-if="list.teacher_name && list.teacher_name.length && group==2"
								class='coursePro_fd2_0_c1_c0'>{{list.teacher_name[0].nickname}}</text>

							<!-- <view class="jilu-outer">
								<view class="jilu-item" @click="jump">
									<image src="@/static/img02/02.png" alt="" />
									<text>错题记录 </text>
								</view>
								<view class="jilu-item">
									<image src="@/static/img02/03.png" alt="" />
									<text>学习记录 </text>
								</view>
								<view class="jilu-item">
									<image src="@/static/img02/04.png" alt="" />
									<text>智能推荐 </text>
								</view>
							</view> -->
						</view>
					</view>
					<!-- <text @click.stop="goVideo">进入群聊（临时入口）</text>
					<view @tap.stop="handleJumpDiy" data-type="navigateTo" v-if="group==2"
						:data-url="`/pages/kc/bjq/bjq?teaching_id=${course}`"
						class="flex flex-direction flex-wrap align-center justify-center" style="padding-right: 24rpx;">
						<image style="width: 56rpx;height: 56rpx;" :src='STATIC_URL+"kcql.png"' mode=""></image>
						<text>班级群</text>
					</view> -->
				</view>
				<!-- <u-sticky :offsetTop="StatusBarRpx">
					<view class='flex flex-direction flex-wrap align-stretch coursePro_fd2_1'>
						<benben-flex-tabs class-name='coursePro_benbenTabsfd2_1_c0' v-model="tabsVal"
							ref="benben_tabsfd2_1_c0" select-mark="benben_tabsfd2_1_c0" key="benben_tabsfd2_1_c0"
							:open-title-type='false' :open-sticky='false' :top='0' :is-show-content='false'
							:scrollspy='false' :tabs-info.sync="tabsInfofd2_1_c0" @change="getjf6f236d491017Func()">
							<scroll-view @scroll="tabsInfofd2_1_c0.scrollX = $event.detail.scrollLeft"
								id="benben_tabsfd2_1_c0" class="benben-tabs" style="width:100%" :scroll-x="true"
								:scroll-left="tabsInfofd2_1_c0.moveX" scroll-with-animation="all .3s ease">
								<view class="benben-tabs-content" id="benben_tabsfd2_1_c0-content">
									<view id="benben_tabsfd2_1_c0-title"
										class="benben-tabs-title flex align-center justify-around flex ">
										<template v-for='(item,key0) in tabs'>
											<view :key='key0' :class="[
												  tabsVal == item.value ? 'checkTitlefd2_1_c0' : 'checkTitlefd2_1_c0-other',
												  'flex flex-wrap align-center'
												]" @tap="check(item.value)" :id="`benben_tabsfd2_1_c0-title-item-${item.value}`">

												<text>{{item.name}}</text>

											</view>
										</template>
									</view>
									<view
										:style="{ left: tabsInfofd2_1_c0.lineleft, maxWidth: tabsInfofd2_1_c0.lineWidth ,}"
										id="benben_tabsfd2_1_c0-line"
										class="benben-tabs-line flex benben-flex-tabs-line coursePro_linefd2_1_c0"
										:class="{'benben-tabs-line-active':tabsInfofd2_1_c0.isInit}"></view>
								</view>
							</scroll-view>
						</benben-flex-tabs>
					</view>
				</u-sticky> -->
				<view class="kcxx">
					<view class='flex flex-wrap align-center justify-between' style="margin: 24rpx 0;">
						<view style="margin-left: 24rpx;">
							<text class='MyPortrayal_fd1_0_c0_c1'>课程学习</text>
							<view class='flex  MyPortrayal_fd1_0_c0_c0'></view>
						</view>

					</view>
					
					<view class="flex flex-wrap align-start justify-between benben-flex-layout flex_1_ibhf">
						<view @tap.stop="check(0)" v-if="group==2" class=' fd1_0_ibhf'>
							<image :src='STATIC_URL+"01.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>课程班级</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>共</text>
								<text class='fd1_0_c1_c1_ibhf'>{{teachernum.class_count}}</text>
								<text>个班级</text>
							</view>
						</view>
						<view @tap.stop="check(1)" class=' fd1_0_ibhf'>
							<image :src='STATIC_URL+"02.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>知识图谱</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>共</text>
								<text class='fd1_0_c1_c1_ibhf'>{{group==1?num.zhishidian:teachernum.knowledge_point_count}}</text>
								<text>个知识点</text>
							</view>
						</view>
						<view @tap.stop="check(2)" class='fd1_0_ibhf'>
							<image :src='STATIC_URL+"03.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>课程目录</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>共</text>
								<text class='fd1_0_c1_c1_ibhf'>{{group==1?num.course_chapter:teachernum.catalog_count}}</text>
								<text>个目录</text>
							</view>
						</view>
						<view @tap.stop="check(3)" class=' fd1_0_ibhf'>
							<image :src='STATIC_URL+"04.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>课程资源</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>共</text>
								<text class='fd1_0_c1_c1_ibhf'>{{group==1?num.ziliao:teachernum.resource_count}}</text>
								<text>个</text>
							</view>
						</view>
						<view @tap.stop="check(4)" class='fd1_0_ibhf'>
							<image :src='STATIC_URL+"05.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>课前预习</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>{{group==1?'进度：':'共'}}</text>
								<text class='fd1_0_c1_c1_ibhf' v-if="group==1">{{num.yuxi_wc}}/{{num.yuxi}}</text>
								<text class='fd1_0_c1_c1_ibhf' v-if="group==2">{{teachernum.pre_study_count}}</text>
								<text v-if="group==2">次</text>
							</view>
						</view>
						<view @tap.stop="check(5)" class='fd1_0_ibhf'>
							<image :src='STATIC_URL+"06.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>课堂活动</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>共{{group==1?'参与':'发起'}}</text>
								<text class='fd1_0_c1_c1_ibhf'>{{group==1?num.huodong:teachernum.class_activity_count}}</text>
								<text>次</text>
							</view>
						</view>

						<view @tap.stop="check(6)" class='fd1_0_ibhf'>
							<image :src='STATIC_URL+"07.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>课后作业</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>{{group==1?'进度：':'共'}}</text>
								<text class='fd1_0_c1_c1_ibhf' v-if="group==1">{{num.zuoye_wc}}/{{num.zuoye}}</text>
								<text class='fd1_0_c1_c1_ibhf' v-if="group==2">{{teachernum.class_assignment_count}}</text>
								<text v-if="group==2">次</text>
							</view>
						</view>
						<view @tap.stop="check(8)" class='fd1_0_ibhf'>
							<image :src='STATIC_URL+"08.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>课程考试</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>{{group==1?'进度：':'共'}}</text>
								<text class='fd1_0_c1_c1_ibhf' v-if="group==1">{{num.kaoshi_wc}}/{{num.kaoshi}}</text>
								<text class='fd1_0_c1_c1_ibhf' v-if="group==2">{{teachernum.exam_count}}</text>
								<text v-if="group==2">个</text>
							</view>
						</view>
						<view v-if="ishavesy" @tap.stop="check(7)" class=' fd1_0_ibhf'>
							<image :src='STATIC_URL+"09.png"' mode="" class="imgd"></image>
							<view class='flex flex-wrap align-center  fd1_0_c0_ibhf'>
								<text>课堂实验</text>
							</view>
							<view class='flex flex-wrap align-center num'>
								<text>共</text>
								<text class='fd1_0_c1_c1_ibhf'>{{num.shiyan}}</text>
								<text>个实验</text>
							</view>
						</view>

					</view>

				</view>
				<!-- 签到 -->
			<!-- 	<view class="flex benben-position-layout flex flex-wrap align-center classhourPar_flex_5" >
					<image class='classhourPar_fd5_0' mode="aspectFill" :src='STATIC_URL+"1609.png"' @tap.stop="signHandle">
					</image>
				</view> -->
				
				<view class='coursePro_fd2_2'>
					<!-- 课时任务 -->
					<!-- 		<view
						:style="{ minHeight: `calc(100vh - 88rpx - 88rpx - 110rpx - ${StatusBarRpx}rpx - var(--window-bottom))` }"
						class='flex flex-direction renwu-test' v-if=" tabsVal=='1'">
						<template v-for='(item,key0) in CourseTimeList'>
							<view class='flex flex-wrap align-center coursePro_fd2_2_c0_c0' :key='key0'>
								<view class=' flex flex-wrap align-start coursePro_fd2_2_c0_c0_c0'>
									<text :style="{ color: item.teaching_status == 2 ? '#145EFD' : '' }"
										class='coursePro_fd2_2_c0_c0_c0_c0'>{{key0+1}}</text>
								</view>
								<view class='flex flex-wrap justify-between flex-sub coursePro_fd2_2_c0_c0_c1'>
									<view class=' coursePro_fd2_2_c0_c0_c1_c0' style="margin-top: 30rpx;">
										<text :style="{ color: item.teaching_status == 2 ? '#145EFD' : '' }"
											class='coursePro_fd2_2_c0_c0_c1_c0_c0'>{{item.lessonplanning_class_hour_name}}</text>
									</view>
									<view style="margin-top: -25rpx;">
										<text :style="{ color: item.teaching_status == 2 ? '#145EFD' : '' }"
											class='coursePro_fd2_2_c0_c0_c1_c1_c1'>{{$t('上课时间：')}}</text>
										<text :style="{ color: item.teaching_status == 2 ? '#145EFD' : '' }"
											class='coursePro_fd2_2_c0_c0_c1_c1_c1'>{{item.class_time}}</text>
									</view>

								
									<button class='coursePro_fd2_2_c0_c0_c3' v-if=" item.teaching_status=='2'"
										@tap.stop="handleJumpDiy" data-type="navigateTo"
						
									<button class='coursePro_fd2_2_c0_c0_c2' @tap.stop="handleJumpDiy"
										data-type="navigateTo"
										:data-url="`/pages/course/classhourPar/classhourPar?teaching_id=${item.aid}&lessonplanning_id=${item.lessonplanning_id}&time=${item.class_time}&teaching_status=${item.teaching_status}`"
										v-if=" item.teaching_status=='3'">{{$t('已结束')}}</button>
								
									<button class='coursePro_fd2_2_c0_c0_c4' @tap.stop="handleJumpDiy"
										data-type="navigateTo"
										:data-url="`/pages/course/classhourPar/classhourPar?teaching_id=${item.aid}&lessonplanning_id=${item.lessonplanning_id}&time=${item.class_time}&teaching_status=${item.teaching_status}`"
										v-if=" item.teaching_status=='1'">{{$t('未开课')}}</button>
								</view>
							</view>
						</template>
						<fu-empty :pagingListLoadedAll="pagingListLoadedAll"
							:pagingListNoListData="pagingListNoListData" :listDataLength="listDataLength"
							:isLoadInit="isLoadInit"></fu-empty>
					</view>
 -->
					<!-- 知识图谱 -->
					<!-- 	<view :style="{ height: `calc(100vh - 88rpx - 88rpx - ${StatusBarRpx}rpx - var(--window-bottom))` }"
						class='flex flex-wrap align-center coursePro-tupu' v-if=" tabsVal=='2'">
						<div class="total">
							<span style="font-size:26rpx;margin-left: 24rpx;">知识点进度：</span>
							<span style="font-size:32rpx; color: #3771FB;font-weight:bold;">{{numObj.jindu}}</span>
							<span style="font-size:26rpx;">/{{numObj.total_num }}</span>

							<view class='flex flex-wrap align-center'>
								<view class='flex benben-progress-bar MyPortrayal_fd1_7_c1_c0_c1_c0'>
									<view class='benben-progress-bar-center MyPortrayal_progress1_fd1_7_c1_c0_c1_c0'
										:style="{width: numObj.jindu+'%'}">
									</view>
								</view>
								<view class="number">
									{{ ((numObj.total_num > 0 ? numObj.jindu / numObj.total_num : 0) * 100).toFixed(1) }}%
								</view>
							</view>
						</div>
						<view class='flex flex-wrap align-center justify-between flex-sub searchs_fd0_0_ben'>
							<view class='flex flex-wrap align-center flex-sub searchs_fd0_0_c1_ben'>
								<image class='searchs_fd0_0_c1_c0_ben' mode="aspectFit" :src='STATIC_URL+"serse.png"'>
								</image>
								<benben-input class='flex-sub searchs_fd0_0_c1_c1_ben' type="text"
									:placeholder="$t('搜索')" confirm-type="done" :maxlength="-1"
									placeholder-style="color:#999;font-size:28rpx" @confirm="addSearchHistoryFunc()"
									v-model="KeyWord" />
							</view>
						</view>

						<MyComponent :course="course" @myEvent="handleChildData"></MyComponent>
					</view> -->


					<!-- 课程章节 -->
					<!-- 			<view class='coursePro-zhangjie'
						:style="{ minHeight: `calc(100vh - 88rpx - 110rpx - ${StatusBarRpx}rpx - var(--window-bottom))` }"
						v-if=" tabsVal=='3'">
						<div class="total">
							<span style="font-size:26rpx;margin-left: 24rpx;">知识点进度：</span>
							<span style="font-size:32rpx; color: #3771FB;font-weight:bold;">{{numObj2.jindu}}</span>
							<span style="font-size:26rpx;">/{{numObj2.total_num }}</span>

							<view class='flex flex-wrap align-center'>
								<view class='flex benben-progress-bar MyPortrayal_fd1_7_c1_c0_c1_c0'>
									<view class='benben-progress-bar-center MyPortrayal_progress1_fd1_7_c1_c0_c1_c0'
										:style="{width: numObj2.jindu+'%'}">
									</view>
								</view>
								<view class="number">
									{{ ((numObj2.total_num > 0 ? numObj2.jindu / numObj2.total_num : 0) * 100).toFixed(1) }}%
								</view>
							</view>
						</div>
						<chartList :course="course" @myEvent="handleChildData2"></chartList>
					</view> -->

					<!-- 课程实验 -->
					<!-- <view class='coursePro-zhangjie'
						:style="{ minHeight: `calc(100vh - 88rpx - 110rpx - ${StatusBarRpx}rpx - var(--window-bottom))` }"
						v-if=" tabsVal=='4'">
						<div class="total">
							<span style="font-size:26rpx;margin-left: 24rpx;">实验进度：</span>
							<span
								style="font-size:32rpx; color: #3771FB;font-weight:bold;">{{numObj3.completeNum}}</span>
							<span style="font-size:26rpx;">/{{numObj3.arrL}}</span>

							<view class='flex flex-wrap align-center'>
								<view class='flex benben-progress-bar MyPortrayal_fd1_7_c1_c0_c1_c0'>
									<view class='benben-progress-bar-center MyPortrayal_progress1_fd1_7_c1_c0_c1_c0'
										:style="{width: (numObj3.completeNum / numObj3.arrL) * 100+'%'}">
									</view>
								</view>
								<view class="number">
									{{ numObj3.arrL ? ((numObj3.completeNum / numObj3.arrL) * 100).toFixed(2) : '0.00' }}%
								</view>
							</view>
						</div>
						<ExperimentList :course="course" @myEvent="handleChildData3"></ExperimentList>
					</view> -->
				</view>
			</view>
			<benben-popup v-model="popupShow1728358921655" :mask="true" :mask-close-able="true" mode='center'
				:z-index='1000' style="overflow: auto" background-color='rgba(51, 51, 51, 0.4)'>
				<view style="position: relative;"
					class="flex flex-direction flex-wrap align-stretch benben-flex-layout ">
					<view class='sign-now flex flex-direction flex-wrap align-center '>
						<image class="sign-now-top" style="width:350rpx ; height: 92rpx;" src="@/static/sign/01.png"
							mode=""></image>
						<view class="sign-btn" @click.stop="startSign">
							立即签到
						</view>
			
						<view @click.stop="popupShow1728358921655=false" class="later-btn">
							稍后提醒我
						</view>
					</view>
				</view>
			</benben-popup>
			 <!-- 悬浮可拖拽图片 -->
			 <!-- 未签到 已发起状态 -->
			      <view  v-if="state.status==0 && state.check_min==1"
			        class="draggable-image"
			        :style="{
			          left: position.x + 'px',
			          bottom: position.bottom + 'px',
			          transform: `scale(${isDragging ? 1.1 : 1})`
			        }"
			        @touchstart="onTouchStart"
			        @touchmove="onTouchMove"
			        @touchend="onTouchEnd"
			        @longpress="onLongPress"
			      >
			        <image  
					@tap.stop="signHandle" 
			          :src='STATIC_URL+"1609.png"'
			          mode="aspectFit"
			          class="image"
			        ></image>
			      </view>
			<!---flex布局flex布局结束-->
			<!-- 		<view class="flex benben-position-layout flex flex-wrap align-center coursePro_flex_3" v-if=" tabsVal=='1'"
				:style="{height:(110+bottomSafeAreaRpx)+'rpx',paddingBottom:bottomSafeAreaRpx+'rpx', }">
				<button class='coursePro_fd3_0' @tap.stop="startclassFunc()">开始上课</button>
			</view> -->
			<view :style="{height: (110+bottomSafeAreaRpx)+'rpx'}" v-if=" tabsVal=='1'"></view>
			<!-- 投屏组件 -->
			<controlTool v-if="group==2"></controlTool>
		</view>
	</page-body>
</template>
<script>
  import controlTool from '@/components/controlTool/controlTool.vue';
	import pagingList from '@/common/mixin/paging_list.js';
	// import MyComponent from "./MyComponent.vue";
	// import chartList from "./list.vue";
	import ExperimentList from "./experimentList.vue"
	import {
		validate
	} from '@/common/utils/validate.js'

	export default {
		components: {
			// MyComponent,
			// chartList,
			ExperimentList,
			controlTool,
		},
		mixins: [pagingList],

		data() {
			return {
				position: {
				 x: 300, // 初始位置x（距离左侧）
				 bottom: 150 // 初始位置bottom（距离底部）
				},
				startPosition: {
				  x: 0,
				  y: 0
				},
				isDragging: false,
				isVisible: true,
				windowWidth: 375, // 默认屏幕宽度
				windowHeight: 667, // 默认屏幕高度
				isSticky: true, // 是否开启边缘吸附
				imageSize: {
				  width: 80,
				  height: 80
				},
				popupShow1728358921655:false,//签到弹框
				"tabsInfofd2_1_c0": {
					lineleft: '',
					lineWidth: '',
					moveX: 0,
					scrollX: 0,
					PageScrollX: 0,
					isInit: false
				},
				"bbb": false,
				"KeyWord": '',
				"text": "",
				"minixPagingListsApi": "",
				"pageingListApiMethod": "",
				"allowOnloadGetList": false,
				"tabs": [{
					"name": "课时任务",
					"value": "1",
					"image": ""
				}, {
					"name": "知识图谱",
					"value": "2",
					"image": ""
				}, {
					"name": "课程章节",
					"value": "3",
					"image": ""
				}, {
					"name": "课程实验",
					"value": "4",
					"image": ""
				}],
				"tabsVal": "1",
				"tabsLab": "",
				"list": {
					"name": "",
					"cover": "",
					"textbook_name": "",
					"course_details": "",
					"course_objectives": "",
					"teacher": "",
					"academic_year": "",
					"basemajor_name": "",
					"semester": "",
					"class_period": "",
					"duration_schedule": "",
					"aid": ""
				},
				"CourseTimeList": [],
				"course": "1",
				"numObj": {}, //谱图进度
				"numObj2": {}, //章节进度
				"numObj3": {
					completeNum: 0,
					arrL: 0
				}, //实验进度、
				ishavesy: false, //是否有实验
				group: 0,
				num: {
					course_class: '', //班级
					course_chapter: '', //课程章节
					huodong: '', //课堂活动
					kaoshi: '', //课程考试
					shiyan: '', //课堂实验
					yuxi: '', //课前预习
					zhishidian: '', //知识点
					ziliao: '', //学习资料
					zuoye: '', //课后作业
				},
				teachernum:{
					 "class_count": 0, // 课程数
					"knowledge_point_count": 0, // 知识点数
					"catalog_count": 0, // 目录数
					"resource_count": 0, // 资源数
					"pre_study_count": 0, // 预习数
					"class_activity_count": 0, // 课堂活动数
					"class_assignment_count": 0, // 课后作业数
					"exam_count": 0, //考试数
				},
				state:{//签到数据
					status:2,//0未签到 1已签到
					check_min:'0',//0 未开启 1 开始签到 2结束签到
				},
				msgid:'',//系统ing消息过来的签到
			};
		},
		computed: {

		},
		watch: {},
		onLoad(options) {
			let {
				course
			} = options
			if (course !== undefined) this.course = course
			this.msgid=options.msgid?options.msgid:''
			if(this.group==1){
				this.getnum()
			}else{
				this.getteachernum()
			}
				
			// this.getnum()
			this.getjf6f236d491017Func()
			this.getld6f25aec6e2a9Func()


			this.get_course_chapterApi() //判断有没有课程实验，没有就隐藏
			// 获取屏幕尺寸
			this.getWindowSize()
		},
		onShow() {
			this.group = uni.getStorageSync('USER_GROUP');
			this.getjf6f236d491017Func()
			console.log(this.course)
			if(this.course){
				if(this.group==1){
					this.getnum()
				}else{
					this.getteachernum()
				}
				
			}
			
		},
		onUnload() {

		},
		onPageScroll(e) {
			console.log(e);
			if (e.scrollTop >= 200) {
				this.bbb = true
			} else {
				this.bbb = false
			}


		},
		methods: {
			getWindowSize() {
			  const systemInfo = uni.getSystemInfoSync()
			  this.windowWidth = systemInfo.windowWidth
			  this.windowHeight = systemInfo.windowHeight
			  
			  // 设置默认位置在右下角
			  this.position = {
			    x: this.windowWidth - this.imageSize.width - 20,
			    bottom: 150
			  }
			},
			
			onTouchStart(e) {
			  if (!this.isVisible) return
			  
			  this.startPosition = {
			    x: e.touches[0].clientX - this.position.x,
			    y: e.touches[0].clientY - (this.windowHeight - this.position.bottom - this.imageSize.height)
			  }
			  this.isDragging = true
			},
			
			onTouchMove(e) {
			  if (!this.isDragging || !this.isVisible) return
			  
			  e.preventDefault()
			  
			  // 计算新的left位置
			  let newX = e.touches[0].clientX - this.startPosition.x
			  
			  // 计算新的bottom位置
			  // 注意：clientY是从顶部开始计算的，而bottom是从底部开始计算的
			  const clientY = e.touches[0].clientY
			  let newBottom = this.windowHeight - clientY - this.startPosition.y
			  
			  // 边界检测 - X轴
			  newX = Math.max(0, Math.min(newX, this.windowWidth - this.imageSize.width))
			  
			  // 边界检测 - Y轴（bottom值范围）
			  const maxBottom = this.windowHeight - this.imageSize.height - 10 // 距离底部最小10px
			  const minBottom = 0 // 距离底部最大位置（可根据需要调整）
			  newBottom = Math.max(minBottom, Math.min(newBottom, maxBottom))
			  
			  this.position = {
			    x: newX,
			    bottom: newBottom
			  }
			},
			
			onTouchEnd() {
			  this.isDragging = false
			  
			  if (this.isSticky && this.isVisible) {
			    this.stickToEdge()
			  }
			},
			
			onLongPress() {
			  uni.vibrateShort()
			},
			
			// 吸附到边缘
			stickToEdge() {
			  const centerX = this.position.x + this.imageSize.width / 2
			  
			  // 判断距离左右边缘哪个更近
			  const leftDistance = centerX
			  const rightDistance = this.windowWidth - centerX
			  
			  let newX = this.position.x
			  
			  if (leftDistance < rightDistance) {
			    // 吸附到左边缘
			    newX = 10
			  } else {
			    // 吸附到右边缘
			    newX = this.windowWidth - this.imageSize.width - 10
			  }
			  
			  this.position.x = newX
			},
			
			// 重置位置
			resetPosition() {
			  this.position = {
			    x: this.windowWidth - this.imageSize.width - 20,
			    bottom: 150
			  }
			  this.isVisible = true
			},
			
			// 切换吸附功能
			toggleSticky() {
			  this.isSticky = !this.isSticky
			  uni.showToast({
			    title: this.isSticky ? '已开启边缘吸附' : '已关闭边缘吸附',
			    icon: 'none'
			  })
			},
			
			goVideo() {
				uni.navigateTo({
					url: "/pages/course/groupChat/groupChat"
				})
			},
			async getnum() {
				let url=global.apiUrls.post68cb8413c508e
				console.log(this.group)
				
				console.log(666666666666666)
				let res = await this.$api.post(url, {
					course_id: this.course,
				})

				if (res.data.code == 1) {
					console.log(res.data.data)
					this.num = res.data.data
				}
			},
			async getteachernum() {
				let url=global.apiUrls.post691698db8fc03
				let res = await this.$api.post(url, {
					course_id: this.course,
				})
			
				if (res.data.code == 1) {
					console.log(res.data.data)
					this.teachernum = res.data.data
				}
			},
			//判断有没有课程实验， 没有就隐藏
			async get_course_chapterApi() {
				return
				let res = await this.$api.post(global.apiUrls.post6843b550611e8, {
					courseplan_id: this.course,
				})

				if (res.data.code == 1) {
					if (res.data.data.length != 0) {
						// this.tabs.pop()
						this.ishavesy = true
					}
				}
			},
			// 知识图谱
			handleChildData(data) {
				this.numObj = data
			},
			// 课程章节
			handleChildData2(data) {
				this.numObj2 = data
			},
			//实验
			handleChildData3(data) {
				this.numObj3.completeNum = data.filter(item => item.trainings_status?.trainings_status == 3)
					.length || 0
				this.numObj3.arrL = data.length
			},
			async jump(val) {
				//错题数量
				const res1 = await this.$api.get(global.apiUrls.post67735544acf41, {});

				if (!res1.data.data.count) {
					this.$message.info(global.i18n.t('暂无错题'))
					return
				}
				uni.navigateTo({
					url: "/pages/tabBar/wrongQuestion/wrongQuestion?type=2"
				})
			},
			addSearchHistoryFunc() {},
			//APP接口-查看课程详情
			async getjf6f236d491017Func() {
				//请求方法
				//数据验证
				let url = ''
				if (uni.getStorageSync('USER_GROUP') == 1) {
					url = global.apiUrls.post68ca2decb8b2c
				} else {
					url = global.apiUrls.post68c3989022b95
				}
				let datalist = await this.$api.get(url, {
					aid: this.course
				});

				if (datalist.data.code != 1) {
					this.$message.info(datalist.data.msg);
					return
				}
				let infolist = datalist.data;
				this.list = infolist.data
				if(!this.list){
					this.$message.info('数据有误')
					// uni.navigateBack()
					return
				}
				if(uni.getStorageSync('USER_GROUP') == 1){
					this.getia5fa3d29a7663Func()
				}
			},
			
			//APP接口-获取课时列表
			getld6f25aec6e2a9Func() {
				return
				this.minixPagingListsApi = global.apiUrls.post66f25aec6e2a9;
				this.pageingListApiMethod = 'get';
				this.allowOnloadGetList = false;
				this.pagingListPostDataContent = {
					courseplan_id: this.course
				}
				this.listData = [];
				this.CourseTimeList = this.listData;

				let judge = false;

				this.CourseTimeList.forEach(item => {
					if (item.teaching_status == 1) {
						judge = true
					}
				})
				if (judge) {
					this.text = "开始上课"
				} else {
					this.text = "课前预习"
				}


				this.pagingListToggle();
			},
			//开始上课
			startclassFunc() {
				let id = null;
				let time = null
				let aid = null
				let status = null
				this.CourseTimeList.forEach(item => {
					if (item.teaching_status == 2) {
						id = item.lessonplanning_id
						status = item.teaching_status
					}
				})

				if (status == '2') {
					this.$urouter.navigateTo(
						`/pages/course/instructioning/instructioning?lessonplanning_id=${id}`
					);
				}
			},
			check(index) {
				this.tabsVal = index
				if (index == 0) {
					// 课程班级
					uni.navigateTo({
						url: '/pages/kc/kcbj/kcbj?course=' + this.course
					})
				} else if (index == 1) {
					// 知识图谱
					uni.navigateTo({
						url: '/pages/kc/zstp/zstp?course=' + this.course+'&name='+this.list.name+'&num='+ (this.group==1?this.num.zhishidian:this.teachernum.knowledge_point_count)
					})
				} else if (index == 2) {
					// 课程目录
					if (uni.getStorageSync('USER_GROUP') == 1) {
						uni.navigateTo({
							url: '/pages/kc/kczj/kczj?course=' + this.course
						})
					} else {
						uni.navigateTo({
							url: '/pages/kc/teacherkczj/zj?course=' + this.course + '&bookid=' + this.list
								.textbook_id
						})
					}

				} else if (index == 3) {
					// 资源
					uni.navigateTo({
						url: '/pages/kc/kczy/kczy?course=' + this.course
					})
				} else if (index == 4) {
					// 预习
					if (uni.getStorageSync('USER_GROUP') == 1) {
						uni.navigateTo({
							url: '/pages/kc/kqyx/kqyx?course=' + this.course + '&name=' + this.list.name
						})
					} else {
						uni.navigateTo({
							url: '/pages/kc/teacherkqyx/teacherkqyx?course=' + this.course + '&name=' + this.list
								.name + '&type=1'
						})
					}
				} else if (index == 5) {
					// 课堂活动
					if (uni.getStorageSync('USER_GROUP') == 1) {
						uni.navigateTo({
							url: '/pages/activity/kthd/kthd?course=' + this.course+'&teaching_id='+this.list.teaching_id
						})
					} else {
						uni.navigateTo({
							url: '/pages/activity/teacherkthd/teacherkthd?course=' + this.course + '&type=2'
						})
					}

				} else if (index == 6) {
					// 课后作业
					if (uni.getStorageSync('USER_GROUP') == 1) {
						uni.navigateTo({
							url: '/pages/kc/khzy/khzy?course=' + this.course
						})
					} else {
						uni.navigateTo({
							url: '/pages/kc/teacherkqyx/teacherkqyx?course=' + this.course + '&type=2&name=' + this.list.name
						})
					}

				} else if (index == 8) {
					// 考试
					if (uni.getStorageSync('USER_GROUP') == 1) {
						uni.navigateTo({
							url: '/pages/exam/examList/examList?course='+this.course
						})
					} else {
						uni.navigateTo({
							url: '/pages/kc/teacherexamList/teacherexamList?course=' + this.course + '&type=3&name=' + this.list.name
						})
					}

				} else if (index == 7) {
						// 课堂实验
					if (uni.getStorageSync('USER_GROUP') == 1) {
						uni.navigateTo({
							url: '/pages/kc/kcsy/kcsy?course='+this.course
						})
					} else {
						uni.navigateTo({
							url: '/pages/kc/kcsy/kcsy?course='+this.course
						})

					}

				}
			},
			//点击签到按钮
			signHandle() {
				this.startSign()
				// this.popupShow1728358921655 = true
			},
			startSign() {
				console.log('startSign')
				//普通签到
				if (this.state.check_type == '1') {
					this.getds6f3d2a40dd89Func()
				}
				// 手势签到
				else if (this.state.check_type == '2') {
					this.$urouter.navigateTo(
						`/pages/course/gestureSign/gestureSign?teaching_id=${this.list.teaching_id}&msgid=${this.msgid}`
					)
				}
				// 二维码签到
				else if (this.state.check_type == '3') {
					this.$urouter.navigateTo(
						`/pages/course/QRsign/QRsign?teaching_id=${this.list.teaching_id}&msgid=${this.msgid}`
					)
				}
				// 签到码签到
				else if (this.state.check_type == '4') {
					this.$urouter.navigateTo(
						`/pages/course/shuziSign/shuziSign?teaching_id=${this.list.teaching_id}&check_password=${this.state.check_password}&msgid=${this.msgid}`
					)
				}
				this.popupShow1728358921655 = false
			},
			async getds6f3d2a40dd89Func() {
				let data66f3d2a40dd89 = await this.$api.post(global.apiUrls.post68aecbf3b2237, {
					teaching_id: this.list.teaching_id
				});
			
				if (data66f3d2a40dd89.data.code != 1)  {
					this.$message.info(data66f3d2a40dd89.data.msg);
					return
				} else {
					this.$message.info('操作成功');
				}
				this.getia5fa3d29a7663Func()
				if(this.msgid){
					this.getred()
				}
				
			},
			// 公告 已读
			async getred(){
				let datalist = await this.$api.get(global.apiUrls.post68413be3159e9, {
					aid: this.msgid,
				});
							
				// if (datalist.data.code != 1) {
				// 	this.$message.info(datalist.data.msg);
				// 	return
				// }
			},
			//上课签到-获取上课签到状态
			async getia5fa3d29a7663Func() {
				
				let datastate = await this.$api.get(global.apiUrls.post6708db8f9bf3a, {
					teaching_id: this.list.teaching_id,
					sys_msg_id: this.sys_msg_id
				});
			
				if (datastate.data.code != 1) {
					this.$message.info(datastate.data.msg);
					return
				}
			
				this.state = datastate.data.data
				// this.signInShow = this.state.status
			},
			pagingListPostData() {
				return this.pagingListPostDataContent
			}
		}
	};
</script>
<style lang="scss" scoped>
	.page {
		width: 100vw;
		min-height: calc(100vh - var(--window-bottom));
		background: #F8F8F8;
		background-size: 100% auto;
	}

	.coursePro_flex_0 {
		width: 750rpx;
		height: 88rpx;
		overflow: hidden;
		z-index: 12;
		top: 0rpx;
		background: #fff;
	}

	.coursePro_flex_0123456 {
		width: 750rpx;
		overflow: hidden;
		z-index: 12;
		top: 0rpx;
		background: #fff;
	}

	.coursePro_fd0_0_c1_c0 {
		font-size: 36rpx;
		font-weight: 700;
		color: #333333;
		line-height: 50rpx;
	}

	.coursePro_fd0_0_c0_c00012 {
		font-size: 36rpx;
		color: #333;
	}

	.coursePro_fd0_0_c0_c0 {
		font-size: 36rpx;
		color: var(--benbenFontColor3);
	}

	.coursePro_fd0_0_c0 {
		width: 120rpx;
	}

	.coursePro_fd0_0 {
		padding: 0rpx 32rpx 0rpx 32rpx;
	}

	.coursePro_flex_1 {
		height: 524rpx;
		position: relative;
		// margin: -150rpx 0rpx 0rpx 0rpx;
	}

	.coursePro_fd1_0 {
		width: 100%;
		height: 100%;
		border-radius: 0rpx 0rpx 0rpx 0rpx;
	}

	.coursePro_flex_2 {
		position: relative;
	}

	::v-deep .coursePro_fd2_2_c1_c0 {
		width: 100%;
	}

	.coursePro_fd2_2_c1 {
		padding: 32rpx 24rpx 32rpx 024rpx;
	}

	.coursePro-tupu {
		overflow: hidden;
		padding: 0 24rpx 0 24rpx;
		display: flex;
		flex-direction: column;

		.total {
			width: 100%;
			height: 88rpx;
			background: #F4F8FD;
			border-radius: 12rpx 12rpx 12rpx 12rpx;
			border: 1rpx solid rgba(0, 0, 0, 0);
			margin-top: 30rpx;
			display: flex;
			align-items: center;
			margin-bottom: 30rpx;
		}
	}

	.coursePro-zhangjie {
		.total {
			// width: 100%;
			height: 88rpx;
			background: #F4F8FD;
			border-radius: 12rpx 12rpx 12rpx 12rpx;
			border: 1rpx solid rgba(0, 0, 0, 0);
			display: flex;
			align-items: center;
			margin: 30rpx 24rpx 32rpx 24rpx;
		}
	}

	.coursePro_fd2_2_c0_c0_c4 {
		background: rgba(20, 94, 253, .1);
		border-radius: 33rpx 33rpx 33rpx 33rpx;
		width: 123rpx;
		height: 56rpx;
		line-height: 56rpx;
		font-size: 24rpx;
		color: rgba(20, 94, 253, 1);
		margin-top: -55rpx;
	}

	.coursePro_fd2_2_c0_c0_c3 {
		background: #145efd;
		border-radius: 33rpx 33rpx 33rpx 33rpx;
		width: 123rpx;
		height: 56rpx;
		line-height: 56rpx;
		font-size: 26rpx;
		margin-top: -55rpx;
		color: var(--benbenFontColor3);
	}

	.coursePro_fd2_2_c0_c0_c2 {
		width: 123rpx;
		height: 56rpx;
		line-height: 56rpx;
		border-radius: 28rpx;
		border: 1rpx solid #949AAB;
		font-weight: 400;
		font-size: 26rpx;
		margin-top: -55rpx;
		color: #949AAB;
	}

	.coursePro_fd2_2_c0_c0_c1_c1_c1 {
		color: rgba(153, 153, 153, 1);
		font-size: 24rpx;
		font-weight: 400;
	}

	.coursePro_fd2_2_c0_c0_c1_c1_c0 {
		width: 24rpx;
		height: 24rpx;
		border-radius: 0rpx 0rpx 0rpx 0rpx;
		margin: 0rpx 16rpx 0rpx 0rpx;
	}

	.coursePro_fd2_2_c0_c0_c1_c0_c0 {
		margin: 0rpx 16rpx 0rpx 0rpx;
		line-height: 42rpx;
		font-weight: 500;
		font-size: 28rpx;
		color: rgba(51, 51, 51, 1);
		width: 100%;
		-webkit-line-clamp: 1;
		overflow: hidden;
		text-overflow: ellipsis;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}

	.coursePro_fd2_2_c0_c0_c1_c0 {
		width: 100%;
	}

	.coursePro_fd2_2_c0_c0_c1 {
		border-bottom: 1px solid #EEEEEE;
		height: 148rpx;
	}

	.coursePro_fd2_2_c0_c0_c0_c0 {
		margin: 1rpx 16rpx 0rpx 0rpx;
		line-height: 42rpx;
		font-weight: 500;
		font-size: 28rpx;
		color: rgba(51, 51, 51, 1);
	}

	.coursePro_fd2_2_c0_c0_c0 {
		height: 94rpx;
		font-weight: 500;
		font-size: 28rpx;
		color: #131D34;
	}

	.coursePro_fd2_2_c0_c0 {
		height: 148rpx;
	}

	.text-blue {
		color: #145efd;
	}

	.renwu-test {
		padding: 0 24rpx 32rpx 24rpx;
	}

	.kcxx {
		background: url(image-path('1664.png')) no-repeat;
		background-size: 100% auto;
	}

	// 最外层
	.coursePro_fd2_2 {
		background: var(--benbenbgColor1);
		// padding: 0 24rpx 32rpx 24rpx;
		background-size: 100% auto;
		border-radius: 32rpx;
	}

	.coursePro_linefd2_1_c0 {
		background: rgba(20, 94, 253, 1);
		width: 104rpx;
		height: 4rpx;
		top: 87rpx;
		border-radius: 16rpx;
	}

	.checkTitlefd2_1_c0 {
		font-weight: 600 !important;
		font-size: 30rpx !important;
		color: #131D34 !important;
		background-color: rgba(255, 255, 255, 1) !important;
	}

	.checkTitlefd2_1_c0-other {
		font-weight: 400;
		font-size: 30rpx;
		color: #747E96;
	}

	::v-deep .coursePro_benbenTabsfd2_1_c0 {
		background: #fff;
		width: 100%;
		height: 90rpx;
		white-space: nowrap;
		text-align: center;
	}

	.coursePro_fd2_1 {
		margin-top: 8rpx;
		height: 92rpx;
		background-color: #EEEEEE;
		border-bottom: 1rpx solid #EEEEEE;
	}

	.coursePro_fd2_0_c1_c3 {
		background: #999999;
		width: 1rpx;
		height: 30rpx;
		margin: 0rpx 16rpx 0rpx 16rpx;
		transform: scaleX(0.5);
	}

	.coursePro_fd2_0_c1_c0 {
		color: rgba(153, 153, 153, 1);
		font-size: 28rpx;
		font-weight: 400;
		line-height: 40rpx;
	}

	.jilu-outer {
		margin: 44rpx 0;
		width: 100%;
		display: flex;
		justify-content: space-around;

		.jilu-item {
			display: flex;
			width: 100rpx;
			flex-direction: column;
			align-items: center;

			image {
				width: 56rpx;
				height: 62rpx;
				margin-bottom: 15rpx;
			}

			text {
				line-height: 33rpx;
				font-weight: 400;
				font-size: 24rpx;
				color: #131D34;
			}
		}
	}

	.coursePro_fd2_0_c0 {
		margin: 24rpx 0rpx 26rpx 0rpx;
		color: #333333;
		font-size: 34rpx;
		font-weight: 600;
		line-height: 45rpx;
	}

	.text1-outer {
		line-height: 37rpx;
		padding: 2rpx 20rpx;
		background: #E7EEFE;
		border-radius: 26rpx;
		font-size: 26rpx;
		color: #145EFD;
		margin-right: 10rpx;
	}

	.coursePro_fd2_0 {
		padding: 0 24rpx 40rpx 24rpx;
		background-color: #fff;

	}

	.coursePro_flex_3 {
		width: 750rpx;
		height: 110rpx;
		overflow: hidden;
		z-index: 10;
		bottom: calc(0rpx + var(--window-bottom));
		background-color: #fff;
	}

	.coursePro_fd3_0 {
		background: #145efd;
		width: 450rpx;
		height: 64rpx;
		line-height: 64rpx;
		font-size: 30rpx;
		color: #fff;
		border-radius: 44rpx;
		margin: 0 auto
	}


	searchs_flex_0_ben {
		background: #fff;
		width: 750rpx;
		height: 88rpx;
		overflow: hidden;
		z-index: 10;
		top: 0rpx;
		background-size: 100% auto !important;
	}

	.searchs_fd0_0_c2_ben {
		font-size: 28rpx;
		font-weight: 400;
		color: #333;
		margin: -5rpx 0rpx 0rpx 24rpx;
	}

	.searchs_fd0_0_c1_c1_ben {
		margin: 10rpx 0rpx 0rpx 24rpx;
		font-size: 28rpx;
		font-weight: 400;
		color: #333;
	}

	.searchs_fd0_0_c1_c0_ben {
		margin: -4rpx 0rpx 0rpx 0rpx;
		width: 28rpx;
		height: 28rpx;
	}

	.searchs_fd0_0_c1_ben {
		background: rgba(249, 249, 249, 1);
		background-size: 100% auto !important;
		border-radius: 34rpx 34rpx 34rpx 34rpx;
		margin: 0rpx 0rpx 0rpx 24rpx;
		padding: 0rpx 24rpx 0rpx 24rpx;

		width: 494rpx;
		height: 56rpx;
		background: #FFFFFF;
		border-radius: 28rpx 28rpx 28rpx 28rpx;
		border: 1rpx solid #EEEEEE;
	}

	.searchs_fd0_0_c0_ben {
		font-size: 36rpx;
		color: #333;
		font-weight: 500;
	}

	.searchs_fd0_0_ben {
		padding: 0rpx 32rpx 0rpx 32rpx;
		height: 88rpx;
	}

	.searchs_flex_1_ben {
		padding: 24rpx 24rpx 0rpx 24rpx;
	}

	.searchs_fd1_2_ben {
		font-size: 24rpx;
		font-weight: 400;
		color: #999999;
	}

	.searchs_fd1_1_c0_c0_ben {
		font-size: 24rpx;
		font-weight: 400;
		color: rgba(51, 51, 51, 1);
	}

	.searchs_fd1_1_c0_ben {
		background: var(--benbenbgColor5);
		border-radius: 32rpx 32rpx 32rpx 32rpx;
		background-size: 100% auto !important;
		padding: 0rpx 40rpx 0rpx 40rpx;
		line-height: 56rpx;
		margin: 0rpx 22rpx 24rpx 0rpx;
	}

	.searchs_fd1_0_c2_ben {
		width: 32rpx;
		height: 32rpx;
		margin: 0rpx 0rpx 0rpx auto;
	}

	.searchs_fd1_0_c1_ben {
		font-size: 32rpx;
		font-weight: 500;
		color: #333;
	}

	.searchs_fd1_0_c0_ben {
		background: rgba(20, 94, 253, 1);
		width: 6rpx;
		height: 27rpx;
		background-size: 100% auto;
		border-radius: 8rpx;
		margin: 0rpx 16rpx 0rpx 0rpx;
	}

	.searchs_fd1_0_ben {
		margin: 0rpx 0rpx 24rpx 0rpx;
	}

	.searchs_flex_2_ben {
		background: #fff;
		margin: 0rpx 105rpx 0rpx 105rpx;
		background-size: #eee;
		border-radius: 25rpx 25rpx 25rpx 25rpx;
		padding: 40rpx 0rpx 0rpx 0rpx;
	}

	.searchs_fd2_2_c1_ben {
		background: transparent;
		line-height: 110rpx;
		border-radius: 0rpx 0rpx 16rpx 0rpx;
		font-size: 32rpx;
		color: var(--benbenFontColor7);
		width: 269rpx;
		height: 110rpx;
	}

	.searchs_fd2_2_c0_ben {
		border-right: 1px solid #EEEEEE;
		background: transparent;
		line-height: 110rpx;
		border-radius: 0rpx 0rpx 0rpx 16rpx;
		font-size: 32rpx;
		color: var(--benbenFontColor2);
		height: 110rpx;
		width: 270rpx;
	}

	.searchs_fd2_2_ben {
		border-top: 1px solid #eee;
	}

	.searchs_fd2_1_ben {
		font-size: 32rpx;
		font-weight: 400;
		line-height: 52rpx;
		color: #333333;
		margin: 40rpx 0rpx 39rpx 0rpx;
	}

	.searchs_fd2_0_ben {
		color: #333333;
		font-size: 32rpx;
		font-weight: 500;
		line-height: 45rpx;
	}

	.MyPortrayal_fd1_7_c1_c0_c1_c0 {
		background: #fff;
		width: 300rpx;
		height: 28rpx;
		border-radius: 14rpx;
		background-size: 100% auto;
		margin-left: 44rpx;

		.MyPortrayal_progress1_fd1_7_c1_c0_c1_c0 {
			background: linear-gradient(90deg, #6E9CFF 0%, #145EFD 100%);
			border-radius: 14rpx;
		}


	}

	.number {
		font-weight: 500;
		font-size: 20rpx;
		color: #145EFD;
		line-height: 28rpx;
		font-weight: 500;
		margin-left: 10rpx;
	}

	.MyPortrayal_fd1_0_c0_c0 {
		width: 120rpx;
		height: 10rpx;
		background: linear-gradient(90deg, rgba(20, 94, 253, 0) 0%, #145EFD 100%);
		border-radius: 0px 0px 0px 0px;
		margin-top: -20rpx;
		margin-left: 12rpx;
	}

	.MyPortrayal_fd1_0_c0_c1 {
		color: #333;
		font-size: 32rpx;
		font-weight: 500;
		line-height: 48rpx;
		margin: 0rpx 0rpx 0rpx 10rpx;
	}

	.flex_1_ibhf {
		width: 100%;
		// background-color: #FFFFFF;
		padding: 24rpx;

		.fd1_0_ibhf {
			position: relative;
			width: 339rpx;
			height: 156rpx;
			// border: 1px solid rgba(204, 204, 204, 1);
			border-radius: 24rpx;
			margin-bottom: 24rpx;
			flex-wrap: wrap;
			padding: 24rpx;
			color: #666666;

			.imgd {
				position: absolute;
				top: 0;
				left: 0;
				width: 339rpx;
				height: 156rpx;
			}

			.fd1_0_c0_ibhf {
				z-index: 666;
				position: relative;
				line-height: 42rpx;
				font-family: PingFang SC, PingFang SC;
				font-weight: 500;
				font-size: 30rpx;
				color: #333333;
				text-align: left;
				font-style: normal;
				text-transform: none;
				margin-bottom: 16rpx;
			}

			.num {
				z-index: 666;
				position: relative;
				line-height: 48rpx;
			}

			.fd1_0_c1_c1_ibhf {

				color: var(--benbenFontColor4);
				// font-size: 48rpx;
			}
		}

		.fd1_1_ibhf {
			width: 48%;
			height: 200rpx;
		}
	}

	.flex_0_ibhf {
		width: 750rpx;
		height: 88rpx;
		overflow: hidden;
		z-index: 10;
		top: 0rpx;
		background: #fff;
		background-size: 100% auto !important;

		.fd0_0_ibhf {
			padding: 0rpx 32rpx 0rpx 32rpx;

			.fd0_0_c1_c0_ibhf {
				font-size: 36rpx;
				font-weight: 700;
				color: #333333;
				line-height: 50rpx;
			}
		}
	}

	.fd0_0_c0_ibhf {
		width: 120rpx;

		.fd0_0_c0_c0_ibhf {
			font-size: 36rpx;
			color: #333;
		}
	}
	.classhourPar_flex_5 {
		width: 173rpx;
		height: 157rpx;
		overflow: hidden;
		z-index: 998;
		bottom: calc(200rpx + var(--window-bottom));
		right: 6rpx;
	}
	
	.classhourPar_fd5_0 {
		width: 163rpx;
		height: 148rpx;
		border-radius: 0rpx 0rpx 0rpx 0rpx;
	}
	.sign-now {
		background: #fff;
		width: 558rpx;
		height: 570rpx;
		background-size: 100% auto;
		border-radius: 24rpx;
		padding: 47rpx 32rpx 47rpx 32rpx;
		background-image: url('@/static/sign/02.png');
		background-size: 558rpx 380rpx;
		background-repeat: no-repeat;
	
		.sign-now-top {
			position: absolute;
			top: -32rpx;
			z-index: 999999;
		}
	
		.sign-btn {
			width: 310rpx;
			height: 84rpx;
			background: linear-gradient(270deg, #145EFD 0%, #149AFD 100%);
			border-radius: 42rpx 42rpx 42rpx 42rpx;
			font-weight: 500;
			font-size: 34rpx;
			color: #FFFFFF;
			text-align: center;
			line-height: 84rpx;
			position: absolute;
			bottom: 96rpx;
		}
	
		.later-btn {
			position: absolute;
			bottom: 28rpx;
			font-weight: 400;
			font-size: 28rpx;
			color: #333333;
		}
	}
	// 悬浮的
	.draggable-image {
	  position: fixed;
	  width: 80px;
	  height: 80px;
	  border-radius: 20px;
	  // box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
	  transition: transform 0.2s ease;
	  z-index: 999;
	  overflow: hidden;
	}
	
	.image {
	  width: 100%;
	  height: 100%;
	}
	// .container {
	//   display: flex;
	//   flex-direction: column;
	//   min-height: 100vh;
	//   background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
	//   padding: 20px;
	//   box-sizing: border-box;
	// }
</style>